package com.letsiot.applications.service;

import java.util.List;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import com.letsiot.applications.dto.SysUserDTO;
import com.letsiot.applications.entity.SysUser;
import com.letsiot.applications.entity.SysUserAuths;

public interface SysUserService extends BaseService<SysUser> {

    SysUser getUserByIdentifier(String identifier);

    SysUserAuths getUserAuthByIdentifier(String identifier);

    List<SysUserAuths> getUserAuthByUserId(Long userId);

    Page<SysUser> getUserPage(Pageable pageable);

    void createUser(SysUserDTO userVO);

    boolean login(SysUser user);

    boolean logout(SysUser user);

    int updatePassword(SysUserDTO userVO);
}
